/***************************************************************
 * Name:      stringsMain.h
 * Purpose:   Defines Application Frame
 * Author:    group3 ()
 * Created:   2012-04-14
 * Copyright: group3 ()
 * License:
 **************************************************************/

#ifndef STRINGSMAIN_H
#define STRINGSMAIN_H

#include <wx/textfile.h>
#include <map>
#include <algorithm>
#include <string>

//(*Headers(stringsFrame)
#include <wx/menu.h>
#include <wx/filedlg.h>
#include <wx/frame.h>
#include <wx/textctrl.h>
//*)

static wxString alphabet = _T("abcdefghijklmnopqrstuvxywz");
static wxString charA = _T("áàâãä");
static wxString charE = _T("éèêẽë");
static wxString charI = _T("íìîĩï");
static wxString charO = _T("óòôõö");
static wxString charU = _T("úùûũü");
static wxString charC = _T("ç");
static wxString charN = _T("ñ");

class stringsFrame: public wxFrame
{
    public:

        stringsFrame(wxWindow* parent,wxWindowID id = -1);
        virtual ~stringsFrame();

    private:

        //(*Handlers(stringsFrame)
        void OnQuit(wxCommandEvent& event);
        void OnAbout(wxCommandEvent& event);
        void OnOpen(wxCommandEvent& event);
        void OnClear(wxCommandEvent& event);
        //*)
        void OnDump();
        void OnClean(wxString &a);
        wxString WriteLine(wxString a, int b);

        //(*Identifiers(stringsFrame)
        static const long ID_TEXTCTRL1;
        static const long idMenuOpen;
        static const long idMenuClear;
        static const long idMenuQuit;
        static const long idMenuAbout;
        //*)

        //(*Declarations(stringsFrame)
        wxFileDialog* FileDialog1;
        wxTextCtrl* TextCtrl1;
        wxMenuItem* MenuItem4;
        //*)
        unsigned statisticsTotal;
        unsigned others;
        std::map<wxString,int> statistics;
        std::map<wxString,int>::iterator statisticsIt;

        DECLARE_EVENT_TABLE()
};

#endif // STRINGSMAIN_H
